#!/usr/bin/perl
################################################
##
##	Chương trình lấy kết quả sổ xố từ trang :
##	http://webproxy.vnn.vn/xoso/
##	lấy kết quả truyền thống và 1-2-3 , hem lấy 6x36 vì ông bô hem chơi loại này ^^!
##	Cách sử dụng :
##
##	./ket_qua_so_xo.pl
##	./ket_qua_so_xo.pl 20/12/2008
##
##	Cách thứ 2 từ trên xuống sẽ lấy kết quả theo ngày chỉ rõ dạng date/month/year , chú ý , ngày và tháng phải ghi đủ 2 số , năm ghi đủ 4 số
##
################################################
use strict;
use LWP::UserAgent;  
use HTTP::Response;  
use URI::Heuristic;
my $ua = LWP::UserAgent->new( );  
$ua->agent("Schmozilla/v9.14 Platinum"); 			#hem biết có cần hem :(
#
#Hàm lấy kết quả sổ xố giải truyền thống
#@$_[0] là ngày định lấy kết quả , có dạng 20/12/2008
#
sub get_ketqua_truyenthong{
	#nếu không truyền tham số 2 thì tham số 2 trong hàm sẽ là rỗng 
	#với trang web này vẫn lấy được kết quả vì nếu truyền tham số rỗng 
	#nó sẽ lấy kết quả mới nhất trong database
	my $url = URI::Heuristic::uf_urlstr("http://webproxy.vnn.vn/xoso/truyenthong.asp"); 
	my $date = $_[0];#Không nên sửa trực tiếp tham số $_[0] theo  " $_[0] =~ s/(\d{2})\/(\d{2})\/(\d{4})/\2\/\1\/\3/ " , nó sẽ thay đổi hoàn toàn giá trị tham số $_[0] global , có thể gây ảnh hưởng đến các hàm khác
	$date =~ s/(\d{2})\/(\d{2})\/(\d{4})/$2\/$1\/$3/;#mẹ khiếp phải sửa lại tham số ngày vì kết quả truyền thống nó lại lấy dạng 12/20/2008
	my $myreq = HTTP::Request->new(POST=>$url);
	$myreq->content_type('application/x-www-form-urlencoded');
	$myreq->content("Ngay=$date");
	my $response = $ua->request($myreq);
	if ($response->is_error( )) { 
		printf " %s\n", $response->status_line; 
	} else { 
		my $content = $response->content( );
		if($content =~ /<td id="mc">(\d{5})<\/td>/){
			print $1,"\n";
		}
	}
}
#
#Hàm lấy kết quả sổ xố 1 - 2 - 3
#@$_[0] là ngày định lấy kết quả , có dạng 20/12/2008
#
sub get_ketqua_123{
	#nếu không truyền tham số 2 thì tham số 2 trong hàm sẽ là rỗng 
	#với trang web này vẫn lấy được kết quả vì nếu truyền tham số rỗng 
	#nó sẽ lấy kết quả mới nhất trong database
	my $url = URI::Heuristic::uf_urlstr("http://webproxy.vnn.vn/xoso/dientoan123.asp");
	my $myreq = HTTP::Request->new(POST=>$url);
	$myreq->content_type('application/x-www-form-urlencoded');
	$myreq->content("Ngay=$_[0]");
	my $response = $ua->request($myreq);
	if ($response->is_error( )) { 
		printf " %s\n", $response->status_line; 
	} else { 
		my $content = $response->content( );
		if($content =~ /<tr bgcolor="white">\s+<td id="mc">(\d)<\/td>\s*<td id="mc">(\d\d)<\/td>\s*<td id="mc">(\d\d\d)<\/td>/){
			print "$1  -  $2  -  $3\n";
		}
	}
}

our $ngaylayketqua = shift;
get_ketqua_truyenthong($ngaylayketqua);
get_ketqua_123($ngaylayketqua);
